
cdef extern from "coord_conv.h":
    ctypedef int (*coord_conv_func)(double, double ,double *,double *, void *)

    ctypedef struct coord_conv_struct:
        coord_conv_func func
        void * data
        void (*data_destr)(void *)
    
    coord_conv_struct *coord_conv_struct_new(coord_conv_func func, 
                                              void *data, void (*data_destr)(void *))
    
    void coord_conv_struct_free(void *o)

    int fk5_gal(double ra, double dec, double *l, double *b)
    int gal_fk5(double l, double b, double *ra, double *dec)
    int fk5_fk4(double ra, double dec, double *l, double *b)
    int fk4_fk5(double l, double b, double *ra, double *dec)
    int fk4_gal(double ra, double dec, double *l, double *b)
    int gal_fk4(double l, double b, double *ra, double *dec)
